package net.adriana.bean;

import net.adriana.esaytool.annotation.ColumnName;
import net.adriana.esaytool.util.ConvertUtil;

public class Column {
	@ColumnName("TABLE_SCHEM")
	private String tableScheme;
	@ColumnName("TABLE_NAME")
	private String tableName;
	@ColumnName("COLUMN_NAME")
	private String colName;
	@ColumnName("DATA_TYPE")
	private String dataType;
	@ColumnName("TYPE_NAME")
	private String typeName;
	@ColumnName("COLUMN_SIZE")
	private String colSize;
	@ColumnName("ORDINAL_POSITION")
	private String ordinalPosition;
	@ColumnName("REMARKS")
	private String remarks;
	
	private String stdColName;
	private String stdTypeName;
	private String annoName;
	private String annoValue;
	private String annoPattern;
	private String annoMassege;
	private Table table;
	private boolean isSelected;
	private Schema schema;
	
	public Column() {
		super();
	}
	
	
	
	public String getAnnoName() {
		return annoName;
	}



	public void setAnnoName(String annoName) {
		this.annoName = annoName;
	}



	public void setStdColName(String stdColName) {
		this.stdColName = stdColName;
	}



	public String getAnnoValue() {
		return annoValue;
	}



	public void setAnnoValue(String annoValue) {
		this.annoValue = annoValue;
	}



	public String getAnnoPattern() {
		return annoPattern;
	}



	public void setAnnoPattern(String annoPattern) {
		this.annoPattern = annoPattern;
	}



	public String getAnnoMassege() {
		return annoMassege;
	}



	public void setAnnoMassege(String annoMassege) {
		this.annoMassege = annoMassege;
	}



	public String getStdTypeName() {
		return stdTypeName;
	}


	public void setStdTypeName() {
		this.stdTypeName = ConvertUtil.castTypeName(getTypeName());
	}

	public boolean isSelected() {
		return isSelected;
	}

	public void setSelected(boolean isSelected) {
		this.isSelected = isSelected;
	}


	public String getStdColName() {
		return stdColName;
	}

	public void setStdColName() {
		this.stdColName = ConvertUtil.castToCamelCase(getColName(), false);
	}

	public Schema getSchema() {
		return schema;
	}

	public void setSchema(Schema schema) {
		this.schema = schema;
	}

	public String getTableScheme() {
		return tableScheme;
	}

	public void setTableScheme(String tableScheme) {
		this.tableScheme = tableScheme;
	}

	public Table getTable() {
		return table;
	}

	public void setTable(Table table) {
		this.table = table;
	}

	public String getTableName() {
		return tableName;
	}

	public void setTableName(String tableName) {
		this.tableName = tableName;
	}

	public String getColName() {
		return colName;
	}

	public void setColName(String colName) {
		this.colName = colName;
	}

	public String getDataType() {
		return dataType;
	}

	public void setDataType(String dataType) {
		this.dataType = dataType;
	}

	public String getTypeName() {
		return typeName;
	}


	public void setTypeName(String typeName) {
		this.typeName = typeName;
	}


	public String getColSize() {
		return colSize;
	}


	public void setColSize(String colSize) {
		this.colSize = colSize;
	}

	public String getOrdinalPosition() {
		return ordinalPosition;
	}


	public void setOrdinalPosition(String ordinalPosition) {
		this.ordinalPosition = ordinalPosition;
	}


	public String getRemarks() {
		return remarks;
	}


	public void setRemarks(String remarks) {
		this.remarks = remarks;
	}


	@Override
	public String toString() {
		return "Column [tableScheme=" + tableScheme + ", tableName="
				+ tableName + ", colName=" + colName + ", dataType="
				+ dataType + ", typeName=" + typeName + ", colSize="
				+ colSize + ", ordinalPosition=" + ordinalPosition + ", remarks="
				+ remarks + ", table=" + table + "]";
	}
}
